From 5e9dfbbb149874ccc03a3f40b222cb2f46e58cba Mon Sep 17 00:00:00 2001 From: "adsharma@los-vmm.sc.intel.com" Date: Wed, 17 Aug 2005 11:22:31 -0800 Subject: [PATCH] Drop shadow lock on exit Signed-off-by: Yunhong Jiang Signed-off-by: Arun Sharma --- xen/arch/x86/shadow.c | 1 + xen/arch/x86/shadow32.c | 1 + 2 files changed, 2 insertions(+) diff --git a/xen/arch/x86/shadow.c b/xen/arch/x86/shadow.c index e6dd5fe0c1..f34fb6f2e8 100644 --- a/xen/arch/x86/shadow.c +++ b/xen/arch/x86/shadow.c @@ -671,6 +671,7 @@ static void shadow_invlpg_32(struct vcpu *v, unsigned long va) sizeof(gpte))) {*/ if (unlikely(!__guest_get_l1e(v, va, &gpte))) { perfc_incrc(shadow_invlpg_faults); + shadow_unlock(d); return; } l1pte_propagate_from_guest(d, gpte, &spte); diff --git a/xen/arch/x86/shadow32.c b/xen/arch/x86/shadow32.c index 1f6d6bb133..ab0aae3195 100644 --- a/xen/arch/x86/shadow32.c +++ b/xen/arch/x86/shadow32.c @@ -1685,6 +1685,7 @@ void shadow_invlpg(struct vcpu *v, unsigned long va) if (__copy_from_user(&gpte, &linear_pg_table[va >> PAGE_SHIFT], sizeof(gpte))) { perfc_incrc(shadow_invlpg_faults); + shadow_unlock(d); return; } l1pte_propagate_from_guest(d, gpte, &spte); -- 2.30.2